package com.csun.cmny.provider.service;

import com.csun.cmny.base.dto.LoginAuthDto;
import com.csun.cmny.core.support.IService;
import com.csun.cmny.provider.model.domain.UacGroupIpUser;
import com.csun.cmny.provider.model.vo.ipauth.IpAddrVo;
import com.csun.cmny.provider.model.vo.ipauth.IpUserVo;

import java.util.List;

/**
 * @Auther: chisj chisj@foxmal.com
 * @Date: 2020-09-30 14:30
 * @Description:
 */
public interface UacGroupIpUserService extends IService<UacGroupIpUser> {

    /**
     * select by group id
     *
     * @param groupId   the group id
     *
     * @return  the list
     */
    List<IpUserVo> selectByGroupId(Long groupId);

    /**
     * set ip auth
     *
     * @param ipUserVoList  the ip user vo list
     * @param loginAuthDto  the login auth dto
     *
     * @return  the int.
     */
    Integer setIpAuth(List<IpUserVo> ipUserVoList, LoginAuthDto loginAuthDto);

    /**
     * delete by group id
     *
     * @param groupId   the group id
     *
     * @return  the int.
     */
    Integer deleteByGroupId(Long groupId);

    /**
     * save uac group ip addr
     *
     * @param uacGroupIpUser    the uac group ip user
     * @param loginAuthDto      the login auth dto
     *
     * @return  the int.
     */
    Integer save(UacGroupIpUser uacGroupIpUser, LoginAuthDto loginAuthDto);
}
